package com.dylan.历史.算法.排序;

import com.dylan.历史.util.LogUtil;

import java.util.Arrays;

/**
 * Created by Dylan on 2018/10/23.
 */
public class 基础_排序_插入排序 {


    public static void main(String[] args) {
        LogUtil.info(Arrays.toString(insertSort(new int[]{3, 6, 2, 7, 2, 6, 8, 0})));
    }

    /**
     * 插入排序 O(n^2)
     * 将当前值插入前半部分的有序表中
     */
    static int[] insertSort(int[] arr) {
        int len = arr.length;
        for (int i = 1; i < len; i++) {
            for (int j = i; j > 0 && arr[j - 1] > arr[j]; j--) {
                int temp = arr[j];
                arr[j] = arr[j - 1];
                arr[j-1] = temp;
            }
        }
        return arr;
    }
}
